The present invention relates generally to a manner by which to communicate packet data in an ad hoc, wireless communication system, such as a Bluetooth scatternet. More particularly, the present invention relates to apparatus, and an associated method, by which to facilitate routing of packet-formatted data pursuant to a communication session in the Bluetooth scatternet, or other ad hoc, wireless communication system. A new packet header is provided to facilitate routing of the packet-formatted data so-formed. And, new tables are provided for each node in a communication path utilized during a communication session to facilitate the routing of the packet data pursuant to a hop-by-hop communication scheme.
Technological advancements in communication technologies have permitted the introduction, and popularization of usage, of new types of communication systems. Communication devices of both increased processing capacities and of smaller sizes are able to be utilized in applications and in situations not previously possible or practical.
New wireless communication systems, and communication devices operable therein, have been made possible as a result of such advancements. A cellular communication system capable of communicating packet data is exemplary of a new wireless communication system made possible as a result of technological advancements. A Cellular communication system includes a network infrastructure which is installed in a geographical area and affixed in position. Mobile terminals operable in a cellular communication system communicate by way of the network infrastructure.
Additional types of communication systems have been proposed which also take advantage of the advancements in communication technologies. For instance, ad hoc, i.e., infrastructure-free, communication systems have been proposed. The Bluetooth standard sets forth an ad hoc, communication system which provides for wireless connectivity of a large number of different devices. Bluetooth devices are connectable in an ad hoc manner by way of short-distance radio links, thereby to permit data to be communicated between such Bluetooth devices. Each Bluetooth device forms a node in the Bluetooth system, sometimes referred to as a Bluetooth scatternet. But, because a Bluetooth system, unlike a cellular communication system, does not have a fixed infrastructure, effectuating communications therethrough is made more difficult.
The Bluetooth devices are potentially mobile, and movement of the Bluetooth devices necessitates corresponding link changes as a result of such movement. The Bluetooth standard defines piconets formed of a master and slave relationship between one Bluetooth device forming a master and up to seven Bluetooth devices forming slaves to the master. A master of one piconet might also be a slave in another piconet, and the piconets together define a scatternet. Communications are effectuable between Bluetooth devices positioned within different piconets. Random access by a Bluetooth device to communicate in the Bluetooth scatternet is not permitted as the master Bluetooth device of each piconet controls the access to the system. Instead, to form a connection by which to effectuate a communication session, the Bluetooth devices must register with each other in order to set up a connection in which of the devices, i.e., the master, controls the connection.
Existing routing protocols by which to communicate packet data do not adequately take into account the unique aspects of an ad hoc network. Routing protocols developed for fixed networks are not suitable as such protocols are not able to adapt to link changes which occur in a Bluetooth scatternet, or other ad hoc, network. And, while other routing protocols have been developed for general ad hoc networks, the unique features and limitations of a system implemented pursuant to the Bluetooth standard limit the usefulness of such existing routing protocols to effectuate communications in a Bluetooth scatternet. A routing protocol for a Bluetooth scatternet must exhibit an appropriate trade-off between relieving nodes in a communication path formed pursuant to a communication session of processing, routing, and other overhead, information while also keeping track of the routes forming communication paths even in lieu in changing network topologies.
If a manner could be provided by which better to route packet data in an ad hoc, wireless network, such as a Bluetooth scatternet, improved communications therein would be possible.
It is in light of this background information related to ad hoc, wireless networks that the significant improvements of the present invention have evolved.
The present invention, accordingly, advantageously provides apparatus, and an associated method, by which to facilitate routing of packet-formatted data and in an ad hoc, wireless communication system. Through operation of an embodiment of the present invention, routing of packet data between any pair of nodes within a Bluetooth scatternet is made possible.
The routing protocol provided pursuant to an embodiment of the present invention is compatible with existing IPv4 and IPv6 protocols. Additionally, higher-layer protocols, such as TCP (Transport Control Protocol) or UDP, are overlayable upon the routing protocol, thereby to be transparent to users.
In one aspect of the present invention, a new packet header structure is provided. The packet header structure is shorter, relative to conventional IP headers. In one implementation, the packet header structure, herein referred to as a PicoIPv4 packet structure, replaces existing IPv4 packet headers. In another implementation, a new packet header structure, referred to herein by PicoIPv6, replaces conventional IPv6 packet headers. The type of header structure utilized, for instance, is dependent upon the version of IP expected by a higher layer of protocol, such as the TCP or UDP layer.
In another aspect of the present invention, new tables are defined for each Bluetooth device which forms a node in a communication path, inclusive of a Bluetooth data source node and a Bluetooth data destination node. Each Bluetooth, or other ad hoc, device is capable of forming a master device or a slave device, and each of the Bluetooth devices includes a mapping table for mapping incoming packets to outgoing packets received at, and forwarded on, by a communication node. Also, each of the devices includes an IP routing table for mapping IP addresses to a subsequent hop address defining a subsequent node in the communication path. And, each of the Bluetooth devices also includes a table that maps a currently-allocated local identifier and the device""s associated master""s identifier. Information utilized to fill the tables is obtained from packet header information contained in the packet header structure of packet data applied to each node in the communication path. By storing the information in the tables provided to each of the nodes, routing information thereby becomes stored at the tables of the nodes in the communication path.
In another aspect of the present invention, datagram communication is provided to communicate packet data between a data source node and a data destination node within a piconet, within the Bluetooth scatternet, or between a node of the scatternet and a node of a fixed network, e.g., the Internet, to which a Bluetooth device is coupled. Hop-by-hop routing of the packet data is utilized in which every node involved in the communication path from the data source node to the data destination node determines, based upon information stored at the tables of the respective nodes, to which next hop, i.e., node, the packet data is to be transported. Hop-by-hop routing is permitted as the routing information about all ongoing connections in a communication path in the scatternet are contained in routing tables maintained by each node involved in the communication session or connection. Each packet is sent from hop to hop, i.e., from node to subsequent node, and must therefore contain an identifier for the subsequent hop and also the final destination, i.e., the data destination node. For the destination node, the IP address thereof suffices, for the data source node, the local identifier thereof is utilized. Each packet is further identified to indicate the connection, that is, communication session. A sequence number is utilized to identify packets. Each node that communicates a packet to a subsequent hop, i.e., node, identifies a packet belonging to a certain connection with a certain destination with a unique sequence number. The sequence number is assigned when setting up the connection.
Due to the inherent mobility of at least some Bluetooth devices, their movement affects the routing tables contained at each of the devices. When a Bluetooth device moves, the location thereof within the Bluetooth scatternet changes, or, the Bluetooth device moves out of communication range of the scatternet. The tables provided to the Bluetooth devices pursuant to an embodiment of the present invention contain information in such tables to facilitate appropriate route setup, and rerouting, to take into account the movement of such Bluetooth devices.
In these and other aspects, therefore, apparatus, and an associated method, is provided for facilitating routing of packets of data between a data source node and a data destination node by way of a communication path formed in a multinode, ad hoc, wireless communication system. The communication path has at least one node, inclusive of the data destination node. The apparatus comprises at least one first routing table having an incoming data ledger and an outgoing data ledger in which the first routing table maps an incoming data packet into an outgoing data packet.
A more complete appreciation of the present invention and the scope thereof can be obtained from the accompanying drawings which are briefly summarized below, the following detailed description of the presently-preferred embodiments of the present invention, and the appended claims.